#pragma once

#define LIST(...) {__VA_ARGS__}

// TEST_DATA(signalShape,
//           windowShape,
//           outputShape,
//           frameSize,
//           frameStep,
//           center,
//           normalized,
//           length,
//           signalData,
//           windowData,
//           expectedOutput,
//           testcaseName)

// NOTE: expected output were generated using pyTorch.

TEST_DATA(LIST(9, 1, 2),
          LIST(16),
          LIST(16),
          16,
          16,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -2.242565,
               0.775289,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.25736,
               0.053873),
          LIST(1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0),
          LIST(0.121437,
               0.006814,
               0.146813,
               0.06232,
               -0.367033,
               -0.224766,
               0.41194,
               0.425516,
               -0.22407,
               -0.195717,
               0.566259,
               -0.006898,
               -0.512854,
               0.036108,
               0.135034,
               -0.08321),
          "test_case_0");

TEST_DATA(LIST(2, 9, 1, 2),
          LIST(16),
          LIST(2, 16),
          16,
          16,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               -0.141412,
               -1.880003,
               0.800294,
               -0.000426,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.081196,
               0.418519,
               0.70648,
               0.312736),
          LIST(1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0),
          LIST(0.189141,
               -0.339527,
               -0.000897,
               -0.026501,
               -0.168316,
               0.037204,
               -0.012278,
               -0.114297,
               0.060316,
               0.354516,
               0.143578,
               -0.202193,
               0.157808,
               -0.016424,
               0.1994,
               0.036165,
               -0.050058,
               0.403231,
               0.45828,
               -0.317198,
               -0.013407,
               -0.058043,
               -0.151817,
               0.031175,
               0.393187,
               -0.356522,
               -0.40489,
               0.228829,
               0.171181,
               -0.240937,
               -0.200964,
               -0.195503),
          "test_case_1");

TEST_DATA(LIST(9, 2, 2),
          LIST(16),
          LIST(32),
          16,
          16,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               -0.141412,
               -1.880003,
               0.800294,
               -0.000426,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.081196,
               0.418519,
               0.70648,
               0.312736),
          LIST(1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0),
          LIST(-0.039331,
               0.714431,
               -0.547168,
               0.147689,
               0.171668,
               -0.135861,
               0.197358,
               -0.551059,
               0.218279,
               0.103702,
               -0.020073,
               -0.085293,
               0.123413,
               0.150312,
               0.004105,
               -0.154476,
               0.234458,
               -0.085233,
               -0.24554,
               -0.328054,
               -0.217522,
               -0.045053,
               0.211594,
               0.075829,
               0.043693,
               -0.23982,
               0.139148,
               0.073711,
               -0.105523,
               0.193774,
               0.153358,
               -0.137967),
          "test_case_2");

TEST_DATA(LIST(2, 9, 2, 2),
          LIST(16),
          LIST(2, 32),
          16,
          16,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               0.596621,
               -0.037191,
               0.872503,
               -1.152976,
               -0.284634,
               -0.591656,
               -0.40203,
               -0.434979,
               0.435628,
               1.8429,
               -0.348167,
               1.351986,
               -0.251188,
               0.352555,
               -0.892123,
               -0.123285),
          LIST(1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0),
          LIST(0.417477,
               0.03802,
               0.060709,
               -0.190531,
               0.219384,
               0.02691,
               -0.100778,
               -0.185075,
               -0.101133,
               0.239659,
               0.063482,
               -0.248963,
               0.158555,
               0.30774,
               -0.168938,
               -0.238824,
               0.234637,
               0.003051,
               -0.428416,
               -0.104295,
               -0.386444,
               -0.001666,
               0.277233,
               -0.001262,
               0.030189,
               -0.108467,
               -0.050399,
               0.232134,
               -0.1798,
               0.187274,
               0.203619,
               -0.186535,
               -0.108099,
               -0.02833,
               0.037983,
               -0.062384,
               0.659767,
               0.049546,
               0.04816,
               -0.476321,
               -0.275659,
               0.440382,
               -0.268535,
               0.086787,
               0.046933,
               0.645127,
               -0.093191,
               -0.35626,
               -0.094458,
               0.012352,
               -0.230607,
               0.04526,
               0.246117,
               -0.4375,
               0.297332,
               0.412819,
               -0.135137,
               -0.054549,
               0.093591,
               0.429586,
               -0.272011,
               0.139466,
               -0.162847,
               0.08667),
          "test_case_3");

TEST_DATA(LIST(9, 2, 2),
          LIST(16),
          LIST(24),
          16,
          8,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               -0.141412,
               -1.880003,
               0.800294,
               -0.000426,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.081196,
               0.418519,
               0.70648,
               0.312736),
          LIST(1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0),
          LIST(-0.039331,
               0.714431,
               -0.547168,
               0.147689,
               0.171668,
               -0.135861,
               0.197358,
               -0.551059,
               0.226369,
               0.009234,
               -0.132806,
               -0.206674,
               -0.047054,
               0.052629,
               0.10785,
               -0.039323,
               0.043693,
               -0.23982,
               0.139148,
               0.073711,
               -0.105523,
               0.193774,
               0.153358,
               -0.137967),
          "test_case_4");

TEST_DATA(LIST(17, 1, 2),
          LIST(32),
          LIST(32),
          32,
          8,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               -0.141412,
               -1.880003,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.081196,
               0.418519),
          LIST(1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0),
          LIST(-0.02675,
               0.339078,
               -0.480709,
               -0.081762,
               0.081901,
               -0.082955,
               0.241965,
               -0.364023,
               -0.02901,
               0.114552,
               -0.034231,
               -0.084204,
               0.042857,
               0.028004,
               -0.054961,
               -0.132578,
               -0.012581,
               0.375353,
               -0.066459,
               0.229452,
               0.089767,
               -0.052906,
               -0.044608,
               -0.187037,
               0.247289,
               -0.01085,
               0.014158,
               -0.001089,
               0.080556,
               0.122308,
               0.059066,
               -0.021898),
          "test_case_5");

TEST_DATA(LIST(51, 25, 2),
          LIST(100),
          LIST(316),
          100,
          9,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397,
               0.914107,
               0.524005,
               -0.495318,
               -0.178851,
               -0.537561,
               0.486532,
               0.538635,
               0.046373,
               -0.133663,
               0.179325,
               0.124769,
               0.702222,
               0.545824,
               -0.323416,
               -0.08718,
               -0.106655,
               -0.853675,
               -0.730806,
               -0.689785,
               0.443142,
               0.355258,
               -0.973766,
               -0.557472,
               0.030843,
               -0.668737,
               0.06605,
               -0.305378,
               0.529085,
               0.767108,
               0.811062,
               0.12121,
               -0.163668,
               -0.765124,
               0.151078,
               -0.628587,
               0.345983,
               -0.510632,
               0.651185,
               -0.93891,
               -0.978718,
               -1.013209,
               -0.378962,
               0.341017,
               0.155568,
               -0.416701,
               -0.923478,
               -0.770212,
               1.246605,
               -0.933863,
               -0.009915,
               -0.186803,
               -1.177926,
               1.418097,
               0.400423,
               0.391605,
               -0.678915,
               -0.68248,
               -0.36259,
               0.575913,
               -0.468459,
               -1.896111,
               0.11654,
               -0.243689,
               -0.249654,
               0.614827,
               0.394807,
               0.356588,
               -0.234352,
               0.271151,
               -1.013542,
               -0.336781,
               0.497429,
               -0.602338,
               -1.030975,
               1.412778,
               0.872906,
               1.229237,
               -0.140536,
               0.162092,
               -0.331592,
               0.194409,
               -0.225235,
               0.279481,
               -0.327554,
               -0.06668,
               0.358992,
               -0.363573,
               -0.117609,
               -0.603221,
               0.068179,
               0.073246,
               -0.228478,
               -1.317865,
               -1.143298,
               -0.464697,
               1.767664,
               -0.199477,
               -0.700146,
               0.779515,
               0.949162,
               0.470951,
               -1.27846,
               0.392704,
               0.117324,
               -0.304119,
               -0.368927,
               0.703314,
               0.77594,
               0.269937,
               0.352664,
               0.040981,
               0.179855,
               -0.729572,
               0.095205,
               0.3631,
               0.317961,
               0.777528,
               -0.222678,
               -0.306353,
               -1.067746,
               -1.997976,
               -0.501435,
               0.16233,
               -0.429419,
               0.449712,
               -0.729768,
               0.023154,
               0.984819,
               -0.094485,
               0.489579,
               -0.297005,
               -0.341623,
               1.148636,
               1.37995,
               0.235474,
               -0.152281,
               -0.01981,
               -2.136589,
               0.084483,
               -0.396568,
               -0.207415,
               -1.605227,
               0.407652,
               -0.676132,
               0.670982,
               0.177673,
               1.05169,
               -1.158427,
               0.253109,
               -0.292258,
               0.505463,
               -0.523192,
               -0.108876,
               -0.831728,
               0.120441,
               -0.307371,
               0.528818,
               0.085091,
               -0.340524,
               0.803738,
               -0.419732,
               1.314899,
               0.176183,
               0.478115,
               0.607873,
               0.277714,
               -2.006647,
               -0.821657,
               -0.150699,
               -0.281952,
               0.631773,
               -1.748699,
               0.968417,
               -0.57746,
               0.315798,
               -0.826224,
               -0.661519,
               -0.738749,
               0.025312,
               -0.342362,
               0.400445,
               1.268728,
               -0.175508,
               0.24538,
               -0.300999,
               -0.176561,
               -0.365907,
               -1.076423,
               -1.131567,
               0.007587,
               0.537465,
               -0.05664,
               -0.337344,
               -1.13065,
               0.826313,
               0.001474,
               0.615658,
               -0.088895,
               0.395533,
               -0.427913,
               -0.243596,
               0.823334,
               -0.235945,
               0.358508,
               0.421116,
               -1.297633,
               -0.15951,
               -0.254311,
               0.54771,
               -0.620213,
               0.495642,
               0.768273,
               -0.241883,
               -1.091508,
               -0.949047,
               0.315787,
               0.152941,
               -0.757687,
               -0.360026,
               0.028288,
               0.227707,
               -0.209583,
               0.456849,
               0.22659,
               0.238274,
               1.275387,
               -0.112099,
               0.933293,
               -0.912198,
               -0.467616,
               0.769827,
               0.201954,
               -1.406031,
               -0.276698,
               0.932122,
               0.895835,
               -0.224428,
               0.844801,
               1.401528,
               -0.49939,
               1.107636,
               1.003764,
               -0.408025,
               -1.441658,
               0.309393,
               -0.312918,
               -0.34261,
               0.317244,
               -0.41879,
               0.69826,
               0.260237,
               -1.02268,
               -0.571383,
               0.303091,
               0.471709,
               0.357718,
               0.918739,
               0.971842,
               0.467479,
               0.216626,
               -0.729813,
               0.18086,
               -2.303687,
               -0.046078,
               -1.210633,
               -1.568756,
               -0.520409,
               -0.654938,
               -0.294534,
               -1.135455,
               0.326419,
               0.314582,
               0.702951,
               0.2665,
               -0.532015,
               -1.11693,
               1.088304,
               -0.954203,
               -0.641125,
               -0.152469,
               0.177729,
               0.511448,
               0.086343,
               0.209115,
               -0.032344,
               -0.410293,
               0.234468,
               0.765123,
               0.335081,
               0.163104,
               0.189008,
               0.072928,
               0.128138,
               0.287119,
               0.890781,
               -0.837954,
               -1.531861,
               -1.129039,
               -0.277051,
               0.808718,
               0.095566,
               -0.524555,
               -0.079003,
               -1.277314,
               -1.361583,
               -0.405545,
               -1.712375,
               0.109974,
               -0.611826,
               -0.513133,
               0.186095,
               0.267126,
               0.313858,
               -0.053763,
               0.804523,
               -0.364855,
               -0.148276,
               0.273229,
               -0.826068,
               0.56313,
               -0.652179,
               -0.156665,
               0.434279,
               -0.028396,
               -0.856718,
               -0.048692,
               1.067777,
               -0.655257,
               0.892029,
               -0.70384,
               -0.184475,
               0.336341,
               -0.410771,
               0.000424,
               0.088611,
               0.523787,
               0.196529,
               0.006894,
               0.0757,
               -0.410923,
               -0.757005,
               0.733738,
               0.263884,
               0.922686,
               -0.725443,
               1.01362,
               -0.690534,
               1.408414,
               0.027422,
               0.271542,
               0.570397,
               -0.549385,
               0.975722,
               0.831513,
               0.238003,
               -0.073278,
               0.594276,
               -0.595258,
               -0.6556,
               -0.624093,
               -0.831301,
               0.594701,
               1.282018,
               0.360845,
               -0.316045,
               0.041606,
               0.617559,
               0.122991,
               1.318122,
               1.39607,
               0.096827,
               0.089093,
               0.490966,
               -0.041659,
               -1.204606,
               -0.609647,
               -1.60569,
               1.262773,
               0.033175,
               -0.042953,
               -0.818295,
               -0.028824,
               -0.912168,
               -1.222983,
               -0.016996,
               -0.677056,
               -0.046217,
               0.890801,
               -1.121626,
               -0.546823,
               0.073557,
               -1.13721,
               -0.727675,
               -0.786227,
               -0.562396,
               0.973182,
               0.831366,
               0.20901,
               -0.395624,
               0.577638,
               0.347186,
               -0.710504,
               0.223775,
               -0.972042,
               1.57338,
               -0.321592,
               0.92419,
               -0.835995,
               -0.25694,
               -0.257914,
               -1.618326,
               1.010998,
               -0.394744,
               -0.244427,
               -0.871022,
               -0.809017,
               0.473088,
               0.886295,
               0.682207,
               -0.614419,
               0.968696,
               -0.705448,
               -0.120694,
               -0.413492,
               0.4919,
               -1.044504,
               0.723399,
               0.696887,
               0.254491,
               0.523255,
               0.636674,
               -0.294077,
               0.726413,
               1.161148,
               -0.181124,
               1.205935,
               0.524932,
               -0.294716,
               0.243093,
               -1.536761,
               0.454426,
               0.353366,
               0.044285,
               0.204199,
               -0.441537,
               0.256749,
               0.946056,
               -0.201938,
               1.785682,
               0.678612,
               0.159737,
               -1.474293,
               -0.010534,
               0.625809,
               -0.335049,
               -0.127278,
               0.626573,
               0.403545,
               0.5169,
               0.013334,
               -0.369824,
               0.478373,
               -1.145296,
               -0.02806,
               1.703357,
               -0.806773,
               -0.572568,
               0.883521,
               0.279513,
               -0.028941,
               1.015626,
               0.17968,
               0.983227,
               0.126189,
               0.425318,
               -0.273054,
               1.025611,
               -1.599271,
               1.261961,
               -0.194949,
               -0.3846,
               -0.129214,
               -0.212273,
               0.752083,
               -0.1552,
               0.86471,
               0.152128,
               0.51163,
               -0.496071,
               0.807116,
               0.578973,
               -0.162022,
               -0.315466,
               0.478159,
               -1.992089,
               -0.70566,
               -0.310576,
               0.222066,
               1.018542,
               0.599937,
               0.931479,
               0.598366,
               0.755521,
               0.462903,
               -0.733645,
               0.203394,
               1.444663,
               -0.268092,
               -0.93951,
               0.032437,
               0.288299,
               -0.642069,
               -0.373276,
               -1.168494,
               -1.5137,
               1.033572,
               -0.096458,
               1.350953,
               -0.730623,
               -0.880317,
               -0.132508,
               -0.517065,
               0.992729,
               -0.492769,
               0.133859,
               -0.378665,
               0.084028,
               -0.429123,
               -0.443958,
               -0.414586,
               0.69974,
               0.58506,
               0.106768,
               -0.145758,
               -0.055872,
               -0.108011,
               -0.156696,
               -0.037808,
               -0.005249,
               -0.442744,
               -0.256035,
               0.462083,
               1.167235,
               -0.150465,
               -0.417452,
               0.181418,
               -0.622665,
               0.215117,
               0.894041,
               -1.649423,
               -0.573515,
               1.122442,
               -1.203302,
               0.402073,
               0.077831,
               1.181889,
               0.04783,
               -0.13932,
               -0.33879,
               -0.474989,
               -0.127844,
               0.133619,
               -0.347899,
               -0.531953,
               -0.136835,
               0.031654,
               0.389211,
               0.359176,
               -0.367579,
               -0.51795,
               -0.880488,
               -0.403318,
               -0.940489,
               -0.259954,
               0.580135,
               -0.067221,
               -0.040627,
               0.453754,
               1.284173,
               -0.684938,
               -0.013775,
               0.114217,
               0.422086,
               -0.696001,
               -0.020007,
               0.389776,
               -1.245535,
               -0.87581,
               0.155014,
               -0.733253,
               0.427515,
               -0.575966,
               -0.50068,
               0.623574,
               -0.48683,
               -0.682885,
               0.06761,
               -0.74421,
               0.386891,
               0.020371,
               0.908049,
               0.147791,
               -0.118712,
               0.318086,
               0.210017,
               -0.280433,
               0.04604,
               -0.265875,
               0.626156,
               -0.139674,
               0.773897,
               -0.425655,
               -0.312634,
               -0.819946,
               0.376271,
               0.014801,
               2.122154,
               -0.325611,
               -0.988183,
               1.295476,
               0.132798,
               -0.166608,
               0.592713,
               0.099513,
               -0.040773,
               -0.716942,
               0.088373,
               -0.151425,
               0.531893,
               -0.10706,
               0.522758,
               -0.660446,
               0.893177,
               0.473429,
               -0.557572,
               -0.187925,
               0.139375,
               -0.52588,
               0.340212,
               0.030944,
               0.275683,
               -0.349564,
               -0.183345,
               0.823754,
               0.903038,
               0.036684,
               0.090261,
               -0.115816,
               0.717808,
               -1.244689,
               -1.177814,
               0.614361,
               -0.090741,
               1.331986,
               -0.205672,
               0.152255,
               -0.356498,
               0.258228,
               -0.278119,
               -0.10014,
               -1.036091,
               -0.047692,
               -0.259647,
               1.102087,
               -0.070346,
               -0.340421,
               1.186929,
               -1.495302,
               0.3287,
               0.16243,
               0.224539,
               0.308553,
               0.02892,
               0.055062,
               0.996127,
               -0.891035,
               0.09617,
               -0.668711,
               0.06489,
               0.158507,
               0.457545,
               0.72065,
               0.444677,
               -0.35935,
               0.217596,
               0.073345,
               -0.047885,
               0.482899,
               -0.781212,
               -0.745165,
               -0.678584,
               0.451909,
               -0.865748,
               -0.863117,
               1.391584,
               0.104905,
               0.37036,
               -0.218385,
               -0.600607,
               -0.021254,
               -0.832634,
               0.480156,
               0.549994,
               0.786819,
               0.249196,
               -2.183208,
               0.599587,
               0.204007,
               -0.435308,
               -0.650659,
               -0.289803,
               -0.612061,
               -0.136848,
               -0.753783,
               -0.059301,
               -0.19015,
               0.678414,
               -0.081961,
               -0.01093,
               -0.286154,
               -0.329882,
               -0.00093,
               -0.061373,
               -0.892673,
               0.749807,
               -0.322669,
               -0.410846,
               0.876885,
               -0.526199,
               0.316401,
               0.053252,
               0.225524,
               -0.698715,
               -0.539908,
               1.3432,
               0.120462,
               -0.729234,
               0.157661,
               -0.929381,
               0.216432,
               -0.455114,
               0.354494,
               -1.233772,
               0.273825,
               1.517532,
               1.214984,
               0.092337,
               0.328621,
               -0.503168,
               0.774276,
               0.173419,
               -0.395396,
               0.368582,
               0.457484,
               -1.055385,
               0.25175,
               0.684351,
               -0.753816,
               -0.337875,
               -0.956456,
               0.074563,
               -1.056487,
               0.219405,
               0.00936,
               0.290317,
               -0.022169,
               -0.201966,
               -0.132577,
               0.611461,
               0.090725,
               -0.621391,
               0.16727,
               0.279899,
               1.094783,
               -0.627136,
               -0.038837,
               0.41989,
               0.642298,
               0.740318,
               -0.841019,
               -0.942131,
               -0.066017,
               0.745898,
               0.658292,
               0.877462,
               0.29124,
               1.043895,
               -0.423162,
               -1.459874,
               0.665013,
               -1.918809,
               0.367753,
               1.209063,
               1.763037,
               0.649762,
               -1.503927,
               -0.216639,
               -0.060373,
               0.403345,
               0.103237,
               -0.555338,
               1.214558,
               0.411765,
               -0.931829,
               -0.613796,
               -0.658368,
               -0.297553,
               -0.077604,
               -0.612739,
               0.289575,
               0.294857,
               -1.439041,
               0.325818,
               -1.135256,
               0.476199,
               0.184845,
               -0.778861,
               1.420164,
               -0.557636,
               0.081387,
               0.215529,
               -0.744313,
               -0.772475,
               1.254505,
               0.893655,
               -0.71604,
               0.948618,
               2.963168,
               -1.204936,
               0.775757,
               0.669912,
               -0.281639,
               -0.036926,
               0.075038,
               1.257478,
               0.433863,
               -0.594136,
               -0.10629,
               -0.657423,
               0.17757,
               -0.193819,
               -1.054885,
               -0.271511,
               -0.447316,
               -0.798266,
               -0.437846,
               0.817287,
               -0.0428,
               0.057879,
               -0.759655,
               -0.737792,
               0.170682,
               0.070731,
               -0.58874,
               -0.362318,
               -0.533542,
               -0.74802,
               -0.805458,
               0.948033,
               -0.406103,
               0.124607,
               0.446867,
               0.348376,
               -0.881709,
               0.515165,
               -0.518783,
               0.942259,
               0.305776,
               0.521882,
               -0.473996,
               -0.310806,
               0.271502,
               1.101241,
               0.684669,
               0.340863,
               -1.268693,
               -0.1155,
               -0.665594,
               1.035329,
               -2.14615,
               -1.01344,
               -0.710589,
               0.187441,
               -0.203661,
               1.127358,
               0.13965,
               -0.291361,
               -0.274314,
               -1.20298,
               -0.590347,
               0.723757,
               1.195708,
               0.947985,
               -0.047406,
               -0.521954,
               0.185875,
               0.21698,
               -0.384391,
               -0.527613,
               -0.577686,
               0.393459,
               -0.135039,
               -0.519538,
               0.264322,
               0.042428,
               0.499892,
               -0.936381,
               0.612751,
               0.800289,
               0.489635,
               0.532127,
               -0.458555,
               -1.073857,
               0.749156,
               -0.263723,
               -0.128327,
               0.189721,
               1.558473,
               -0.195989,
               -0.554791,
               -0.521283,
               0.107491,
               -0.268722,
               0.602626,
               0.015558,
               0.412613,
               0.592388,
               -0.266807,
               -0.289088,
               1.141965,
               -1.09634,
               -1.946259,
               0.132627,
               0.000519,
               2.086935,
               -0.763412,
               -0.0485,
               0.291302,
               -0.835892,
               0.390789,
               1.188123,
               0.278206,
               -1.196282,
               -0.256422,
               -1.375994,
               -0.142438,
               -1.113827,
               -0.385692,
               0.408061,
               -0.444934,
               -0.194593,
               0.826211,
               -0.417504,
               0.367178,
               -0.446715,
               0.299436,
               0.025551,
               -0.770137,
               -0.159334,
               0.026602,
               0.111396,
               1.092509,
               1.454059,
               0.403417,
               0.786644,
               -0.488903,
               0.564188,
               0.816004,
               0.363863,
               0.531282,
               1.016077,
               -0.767783,
               -0.67207,
               1.293018,
               -0.670428,
               0.924844,
               0.721548,
               0.556837,
               -0.670777,
               0.262086,
               -0.976862,
               -0.215681,
               -0.629387,
               0.392513,
               0.263104,
               0.187587,
               0.308626,
               1.613865,
               -0.471954,
               -0.219112,
               1.010395,
               0.748143,
               -0.808036,
               -0.106077,
               -1.351485,
               -0.383332,
               0.381143,
               1.160201,
               -0.034827,
               0.87588,
               -0.340056,
               0.011498,
               0.107443,
               -1.078311,
               -0.503268,
               -0.028073,
               -0.542474,
               -0.134544,
               1.034147,
               0.463478,
               -0.596371,
               -0.134137,
               -0.260322,
               -0.497901,
               -0.078174,
               0.325218,
               -0.718193,
               0.456713,
               1.323024,
               0.333142,
               0.283342,
               0.748361,
               -0.651794,
               0.434688,
               -1.469092,
               -0.935181,
               0.441133,
               -1.691977,
               0.317541,
               1.123378,
               0.762769,
               -0.525846,
               0.237587,
               -0.017649,
               -0.686039,
               0.488701,
               -0.180739,
               1.020488,
               0.602903,
               0.539151,
               -0.032927,
               0.565333,
               -0.095369,
               -1.368071,
               -1.086515,
               0.961122,
               -0.615855,
               0.036416,
               0.289721,
               0.137572,
               0.103677,
               1.33573,
               -0.865387,
               0.4785,
               2.08018,
               -0.002277,
               -0.748957,
               0.552187,
               0.311091,
               -0.097126,
               1.503199,
               -0.504883,
               -0.492122,
               -0.470115,
               -0.070852,
               -0.559771,
               0.791168,
               -0.686626,
               -0.102083,
               0.993285,
               1.178777,
               -0.349833,
               1.781669,
               -0.51785,
               0.871884,
               0.500195,
               -0.367985,
               0.535792,
               0.34878,
               1.012407,
               -0.011552,
               0.576335,
               0.373333,
               -0.993307,
               2.15286,
               -0.622694,
               -0.392592,
               -1.590476,
               0.522129,
               -0.183383,
               0.747226,
               -1.544895,
               0.532312,
               0.402364,
               -0.886695,
               0.559324,
               0.124099,
               -0.366004,
               -1.027424,
               1.452394,
               -1.101749,
               -0.514272,
               0.225621,
               1.846865,
               -0.24595,
               -0.453849,
               0.752136,
               0.285465,
               0.476289,
               -0.036334,
               0.314443,
               0.197549,
               -1.138507,
               -0.360395,
               0.067898,
               -1.169757,
               -1.250196,
               -0.145247,
               0.96773,
               0.605882,
               -0.216017,
               0.496994,
               0.451753,
               0.962229,
               -0.227863,
               -0.328966,
               0.642421,
               0.150787,
               1.204037,
               0.315014,
               -0.103807,
               0.486949,
               -0.103181,
               0.260004,
               -1.567059,
               0.77895,
               0.453807,
               0.629525,
               -1.209217,
               -0.000508,
               -0.581791,
               0.526135,
               -1.227769,
               1.516539,
               -0.656817,
               -1.357129,
               0.68017,
               -0.061095,
               0.61255,
               -0.009978,
               -0.382499,
               0.741906,
               -0.038648,
               -0.251306,
               1.39519,
               0.591526,
               -0.100673,
               0.659968,
               0.766437,
               -0.895268,
               -1.24523,
               -0.367376,
               -1.153983,
               1.050798,
               0.743757,
               -0.54142,
               -1.005211,
               -0.266867,
               -0.042045,
               0.272396,
               -0.097971,
               -0.12876,
               -0.49407,
               -0.524865,
               -0.370934,
               1.119855,
               -0.497145,
               0.284825,
               -0.816715,
               0.251733,
               -0.211452,
               -0.293932,
               -0.125752,
               0.015234,
               -1.238043,
               1.085959,
               0.402418,
               0.01976,
               -1.232922,
               -0.276845,
               -0.119411,
               -0.160463,
               -0.212544,
               1.707717,
               0.330432,
               -0.552664,
               -0.399525,
               1.166426,
               -0.264939,
               0.143654,
               -1.178646,
               0.239248,
               0.146691,
               0.722003,
               0.49053,
               -0.740934,
               -1.145584,
               0.766413,
               1.150493,
               0.304123,
               -0.68595,
               -0.536011,
               0.481773,
               -1.707253,
               -0.23855,
               -0.208959,
               0.319635,
               -1.28443,
               0.930914,
               -0.843047,
               0.94195,
               0.147669,
               -0.818323,
               0.012138,
               -0.100818,
               0.374886,
               0.453655,
               1.135462,
               0.437056,
               -0.907363,
               -0.105291,
               -0.58409,
               0.458476,
               -0.000461,
               0.306861,
               0.449947,
               -0.108309,
               -0.602586,
               -0.0877,
               0.46117,
               -1.075761,
               0.706175,
               0.992495,
               0.262227,
               -0.861988,
               -0.153163,
               0.23977,
               -0.833739,
               -0.23902,
               -0.396744,
               0.539865,
               -0.370217,
               0.109904,
               -0.576325,
               0.853588,
               0.980257,
               0.941077,
               -0.41572,
               -0.618054,
               -0.224469,
               0.643552,
               0.951018,
               0.388142,
               1.024477,
               -0.22954,
               -0.304671,
               1.727557,
               0.849116,
               0.323175,
               -0.032262,
               0.158336,
               -0.52377,
               -0.513588,
               -1.051293,
               -0.275789,
               -1.009613,
               0.455643,
               -1.870011,
               -0.519849,
               0.512638,
               -0.53846,
               -0.431402,
               -0.248978,
               -1.071201,
               -1.085031,
               0.342438,
               -0.226248,
               0.745949,
               -0.01445,
               0.180031,
               0.397803,
               -0.903986,
               -0.089905,
               0.562175,
               -1.306686,
               -0.040211,
               1.098989,
               -0.006012,
               0.133906,
               -0.981545,
               -0.004059,
               0.925485,
               0.257862,
               -1.120677,
               -0.411499,
               0.459803,
               0.724183,
               -0.777895,
               0.205509,
               0.902079,
               -0.768053,
               0.200086,
               -0.55408,
               0.817144,
               -0.077145,
               -0.814981,
               0.287451,
               0.118014,
               -0.469585,
               -0.433809,
               -0.293272,
               0.400717,
               -0.764322,
               -0.39875,
               0.43093,
               -0.282044,
               -0.31142,
               -0.071296,
               -0.263849,
               0.592834,
               0.727733,
               -0.728511,
               -0.610275,
               -0.299226,
               1.734927,
               0.018303,
               0.342835,
               -0.338879,
               0.991515,
               2.019567,
               0.436965,
               -0.292034,
               -0.003051,
               -0.336608,
               1.061318,
               -0.201733,
               0.484099,
               0.398142,
               -0.158826,
               0.777261,
               1.075528,
               -0.510093,
               0.558298,
               -0.212498,
               0.100619,
               -0.203231,
               0.296085,
               0.678351,
               1.517002,
               -0.104004,
               0.76278,
               0.649204,
               0.401873,
               0.66664,
               -0.532421,
               -0.06054,
               -0.134068,
               -0.28084,
               -0.467896,
               -0.071919,
               0.449698,
               0.888295,
               -0.215221,
               0.490577,
               -0.466089,
               0.243425,
               -0.322547,
               0.647369,
               -0.55204,
               0.588077,
               0.763915,
               1.201851,
               -0.448514,
               0.618403,
               0.106758,
               0.914413,
               -0.712842,
               -0.205565,
               -0.865084,
               0.389591,
               0.41286,
               0.766399,
               0.133023,
               -1.149034,
               -0.798616,
               -0.127934,
               -0.439361,
               -0.146196,
               -0.968446,
               -1.044065,
               -0.159794,
               -0.324992,
               0.15817,
               -0.434936,
               -0.183702,
               -0.011693,
               0.375397,
               -0.883557,
               -0.184888,
               -0.099772,
               -0.464709,
               0.80558,
               -0.521497,
               0.624668,
               -0.227329,
               -0.149832,
               0.924482,
               -0.170185,
               -0.242592,
               0.200607,
               -0.547029,
               0.394995,
               1.229492,
               0.22545,
               -0.937426,
               0.584868,
               -0.647543,
               0.815785,
               -1.022286,
               0.3604,
               -0.373652,
               0.242006,
               -1.146811,
               0.605865,
               1.073609,
               -0.383983,
               0.157096,
               0.267842,
               -1.043707,
               -0.489883,
               -1.387873,
               0.046833,
               0.724554,
               -0.968235,
               1.074594,
               0.166552,
               -0.67642,
               0.583421,
               0.397063,
               0.654866,
               -0.457307,
               -0.06459,
               -1.066974,
               0.091262,
               -0.399432,
               0.886601,
               0.937005,
               -1.373514,
               0.281616,
               -0.455186,
               -0.878772,
               0.049367,
               -0.415392,
               -1.015303,
               1.385643,
               -0.465698,
               -1.244572,
               0.143369,
               0.851294,
               -0.19788,
               1.57942,
               -0.088521,
               1.403017,
               -0.241445,
               -0.607737,
               0.170093,
               -0.75011,
               0.411674,
               1.486641,
               -0.916361,
               0.643473,
               0.107938,
               -0.107514,
               0.645021,
               0.363091,
               -1.23728,
               -0.897012,
               0.202794,
               -0.223288,
               -0.461562,
               -1.291594,
               -0.263328,
               -0.314286,
               -0.264973,
               1.196943,
               -0.008951,
               1.579208,
               0.156225,
               1.016631,
               -1.723207,
               0.501261,
               0.107351,
               -0.26142,
               -0.76049,
               -1.284373,
               0.766069,
               -0.339927,
               -0.519659,
               0.623596,
               -0.149808,
               -0.303946,
               -0.057524,
               -0.675565,
               0.180645,
               1.361556,
               -0.207913,
               -0.215221,
               -0.091399,
               0.658382,
               0.652604,
               -0.494018,
               1.100181,
               -0.079424,
               1.03159,
               0.102542,
               0.564789,
               1.24045,
               -0.088658,
               -1.291056,
               0.074315,
               -0.192047,
               -0.216362,
               -0.355484,
               1.013089,
               -1.038149,
               0.133565,
               0.288869,
               1.012913,
               -0.577511,
               -0.149497,
               -0.414367,
               0.616709,
               -1.131898,
               0.356405,
               -0.664145,
               0.52765,
               0.244246,
               0.151518,
               -0.482984,
               -1.327391,
               1.239949,
               0.85437,
               1.816388,
               -0.607742,
               0.426736,
               -0.146526,
               0.160528,
               -0.484248,
               1.85425,
               -0.718012,
               -0.515199,
               0.6348,
               -1.70057,
               -0.155144,
               0.886399,
               -0.033325,
               -0.001136,
               1.162446,
               0.069182,
               -0.115042,
               -0.228884,
               -1.028975,
               0.10488,
               -0.83848,
               0.152406,
               -0.388577,
               0.958158,
               0.273572,
               -1.628054,
               1.003048,
               0.347679,
               -0.083846,
               -0.432227,
               -0.864401,
               0.063014,
               1.165097,
               -0.221139,
               0.272863,
               0.948796,
               0.749873,
               -0.349992,
               -0.316538,
               0.924581,
               0.372751,
               -0.113077,
               0.781414,
               -0.438169,
               1.336574,
               -1.378391,
               0.103662,
               -0.295735,
               1.00885,
               -0.572127,
               0.38446,
               -0.519157,
               0.280224,
               -0.212339,
               0.875898,
               0.524988,
               -0.436306,
               -0.575431,
               0.343606,
               1.085483,
               -0.825463,
               -0.927647,
               0.322717,
               0.062311,
               0.519998,
               0.607351,
               0.708283,
               -0.429849,
               0.321896,
               -0.56963,
               0.429198,
               0.302534,
               0.741042,
               0.659647,
               0.033122,
               0.318263,
               0.63938,
               0.983669,
               1.058705,
               0.098103,
               -1.203307,
               0.080707,
               0.383287,
               0.665267,
               -1.029334,
               -0.330791,
               0.330248,
               0.824576,
               -0.463341,
               1.221555,
               -0.345979,
               -0.408334,
               -0.36342,
               0.297142,
               1.339945,
               0.563404,
               -0.841758,
               -0.716194,
               -0.431629,
               0.694115,
               -1.185276,
               -0.471344,
               0.207712,
               -0.189739,
               -0.335168,
               -0.044432,
               -1.263873,
               0.134743,
               -0.861555,
               -0.639809,
               -0.548985,
               -0.972198,
               -0.044401,
               0.515827,
               0.084528,
               0.449857,
               0.936959,
               -1.086156,
               -0.484278,
               -0.272297,
               -0.256531,
               0.36394,
               -0.423706,
               0.338826,
               -0.23496,
               -0.237204,
               -0.952821,
               1.073538,
               -0.275905,
               0.679166,
               0.727967,
               -0.073482,
               -0.246133,
               1.330317,
               1.196242,
               0.806085,
               -0.552544,
               0.876764,
               0.075683,
               -0.331437,
               0.100406,
               -0.281424,
               -0.435987,
               0.644751,
               0.176615,
               -0.425263,
               0.556211,
               0.726397,
               0.095118,
               0.305777,
               1.782848,
               0.535017,
               0.572338,
               -0.409579,
               0.704387,
               -0.164087,
               -0.282026,
               -0.011338,
               0.221731,
               1.059149,
               1.748155,
               -0.268813,
               -0.069744,
               -0.837195,
               -1.598232,
               -1.222367,
               0.373138,
               -1.67088,
               -0.431131,
               0.404608,
               -0.406368,
               2.017961,
               0.721716,
               -0.25427,
               -0.297659,
               0.52703,
               0.560574,
               -0.395854,
               0.228693,
               0.970022,
               -0.668368,
               1.235492,
               0.208673,
               0.97003,
               0.477255,
               -0.588599,
               0.047557,
               0.759392,
               -1.093884,
               -0.652892,
               1.161464,
               -0.221768,
               -0.397559,
               -0.396518,
               -1.386156,
               0.013624,
               0.340665,
               -1.496498,
               -0.831454,
               -0.241215,
               0.032636,
               1.26015,
               0.781092,
               -0.35049,
               -0.314526,
               0.381161,
               -0.588771,
               -1.226305,
               0.057482,
               0.994139,
               0.632337,
               -0.347436,
               1.50445,
               -0.681303,
               -1.006999,
               0.132938,
               -1.001068,
               -0.086455,
               -0.780925,
               -0.1255,
               -0.494633,
               1.306665,
               -0.589364,
               -0.017893,
               -0.724742,
               0.037635,
               -0.338082,
               1.69198,
               1.537513,
               0.986583,
               0.365738,
               -0.615567,
               0.299845,
               1.263286,
               0.656948,
               -0.678275,
               -0.394245,
               0.747642,
               0.217204,
               -0.035381,
               -0.573801,
               0.739643,
               -0.630795,
               0.596584,
               0.353914,
               -1.594767,
               -0.335024,
               -0.55078,
               1.03103,
               -0.271055,
               -0.356083,
               -0.078532,
               -0.154102,
               -0.019951,
               -0.887439,
               0.005601,
               -0.54517,
               0.311529,
               0.219605,
               0.222109,
               -0.455515,
               0.383493,
               0.402839,
               0.337997,
               -0.473266,
               0.591445,
               1.745772,
               0.791603,
               0.514668,
               -1.020378,
               -0.50058,
               -1.226021,
               -1.258611,
               -0.299042,
               -0.322387,
               -0.051272,
               0.800475,
               -0.551648,
               0.228517,
               -0.706319,
               1.334658,
               0.299064,
               0.203228,
               0.237043,
               1.42112,
               -0.433528,
               -1.621717,
               0.499907,
               0.552785,
               0.174301,
               0.366163,
               0.841281,
               1.692753,
               0.44584,
               0.45305,
               -0.554887,
               -0.003338,
               -0.556726,
               -0.434771,
               -0.058825,
               0.622761,
               -0.040834,
               -0.322939,
               0.060658,
               -0.594597,
               -0.039688,
               -0.676172,
               0.475802,
               0.325819,
               1.19631,
               -0.228493,
               0.850466,
               -0.243145,
               -0.395126,
               0.452081,
               -1.079474,
               -0.138607,
               -0.087376,
               -0.01705,
               -0.652846,
               -0.847327,
               0.263828,
               -0.503382,
               0.57879,
               -0.233487,
               0.206203,
               0.673895,
               -0.252072,
               0.264322,
               -0.422919,
               0.453862,
               0.027723,
               -0.248617,
               0.622217,
               -0.240959,
               -0.457095,
               0.081418,
               -0.87651,
               -1.265961,
               -0.378601,
               0.638909,
               -0.657698,
               1.342308,
               -0.488821,
               0.199914,
               0.600322,
               -0.219295,
               0.110998,
               0.461258,
               0.636364,
               1.148735,
               0.997784,
               0.163729,
               0.367306,
               1.279133,
               0.043058,
               -0.206624,
               1.417932,
               0.644245,
               -0.181332,
               0.751064,
               0.144361,
               -0.309558,
               -1.320223,
               0.073867,
               -0.322317,
               -0.031341,
               0.503259,
               0.070664,
               -0.059473,
               -0.674748,
               0.052358,
               0.007689,
               -0.226606,
               -0.859186,
               -0.255007,
               0.319055,
               0.928404,
               -0.241062,
               -0.113794,
               1.201638,
               0.268714,
               -0.121723,
               0.005483,
               -0.184763,
               0.322443,
               0.799289,
               0.261738,
               1.413818,
               0.701211,
               0.097958,
               -0.121785,
               -0.157136,
               -0.806904,
               0.947803,
               -0.146667,
               0.378508,
               1.12975,
               0.222075,
               1.546595,
               -0.601372,
               -0.445494,
               -0.144874,
               1.049208,
               -0.265777,
               0.087976,
               0.846727,
               -1.854819,
               0.098382,
               0.693488,
               -0.744845,
               -1.185773,
               -0.999154,
               0.18256,
               -0.955166,
               -0.196823,
               -0.039437,
               -0.338007,
               -0.293991,
               1.275004,
               1.189764,
               1.221249,
               1.249782,
               0.852415,
               0.46097,
               -0.327735,
               -0.14707,
               0.397419,
               -0.759442,
               -1.471373,
               0.625526,
               -0.91358,
               -0.378554,
               1.436598,
               -0.860444,
               0.925965,
               0.027952,
               -1.7394,
               -0.428018,
               -0.714701,
               -0.457764,
               0.585407,
               -0.665194,
               1.6143,
               -0.195528,
               -1.287977,
               -0.023509,
               0.486864,
               -1.193413,
               -0.917248,
               -0.841226,
               0.680923,
               0.276378,
               -0.643456,
               0.910649,
               -1.013459,
               1.32631,
               0.869666,
               -0.208242,
               0.026384,
               -0.214869,
               -1.390882,
               -0.128535,
               0.095829,
               -0.297066,
               -0.169219,
               0.211905,
               -0.485637,
               -0.64467,
               0.314838,
               0.426412,
               -0.512182,
               0.793492,
               0.560717,
               -0.583886,
               -0.096355,
               0.968211,
               -1.11236,
               0.189419,
               -0.107006,
               -0.12077,
               -0.417713,
               -0.400809,
               0.456073,
               -1.311726,
               0.236717,
               0.043469,
               0.855895,
               -1.401726,
               0.483874,
               -0.121041,
               1.495862,
               0.208397,
               -0.351752,
               0.514887,
               0.19305,
               0.775463,
               -0.142886,
               0.852554,
               -0.644517,
               1.082097,
               -0.31806,
               0.612817,
               -0.103237,
               0.206674,
               -0.586125,
               0.451491,
               0.396589,
               0.796746,
               -0.17413,
               1.046898,
               0.342203,
               -1.003772,
               -0.319976,
               -0.112672,
               -1.035649,
               1.199321,
               0.670458,
               0.065731,
               1.474316,
               -0.477633,
               0.167606,
               -0.999981,
               1.468464,
               -0.395899,
               -1.09756,
               -0.03729,
               -0.327357,
               -0.065716,
               0.521869,
               0.649934,
               0.215467,
               0.961744,
               0.493469,
               -0.661243,
               0.074349,
               -0.067731,
               -0.270258,
               0.16703,
               -0.168794,
               -0.161969,
               0.071497,
               -0.870189,
               0.63163,
               -0.111655,
               -0.575655,
               0.758398,
               -2.306418,
               -1.10088,
               1.242596,
               -0.868714,
               1.242088,
               -0.529505,
               0.147761,
               0.196865,
               0.796444,
               -0.056751,
               0.677553,
               -0.127969,
               0.019925,
               0.432539,
               0.434479,
               -0.503914,
               0.150608,
               -0.044781,
               0.192709,
               1.055059,
               0.888602,
               0.229554,
               0.16105,
               -0.980215,
               -1.403733,
               -0.010487,
               -0.884266,
               -0.043431,
               0.928905,
               0.44247,
               -0.092488,
               -1.04053,
               0.062744,
               -0.272741,
               0.784191,
               -0.276511,
               -0.264684,
               -1.235404,
               0.897042,
               -0.016524,
               -0.626186,
               0.515961,
               0.946826,
               0.266991,
               -0.492753,
               -0.908425,
               0.599625,
               -0.868817,
               0.261143,
               -0.443992,
               -0.284081,
               -1.061776,
               0.545186,
               1.339101,
               -0.367119,
               -0.027986,
               0.465624,
               1.050333,
               -2.242906,
               0.645148,
               1.097269,
               1.087735,
               0.524223,
               0.149387,
               0.702067,
               -0.172999,
               -0.894508,
               -0.811891,
               0.644231,
               -0.037256,
               0.937497,
               -0.569851,
               0.430917,
               0.786859,
               -0.721528,
               -1.052333,
               0.347983,
               -0.603201,
               0.193567,
               -0.43863,
               -0.761298,
               -1.325427,
               -0.870579,
               -0.581812,
               -0.890829,
               -1.873387,
               0.667147,
               -0.439459,
               -1.214788,
               0.587477,
               -0.756741,
               -0.476461,
               0.674714,
               0.518557,
               -0.413419,
               -1.089364,
               0.413387,
               -0.338138,
               -0.287156,
               0.202673,
               0.091415,
               0.009878,
               -0.679555,
               0.67316,
               0.975453,
               -0.232843,
               0.092962,
               0.856363,
               -0.22674,
               -0.557455,
               -0.428146,
               0.489874,
               0.775581,
               0.596166,
               -0.259275,
               -0.369331,
               0.439937,
               0.394322,
               0.723042,
               0.916721,
               0.211106,
               0.260018,
               -0.802309,
               0.465043,
               0.170224,
               -1.026522,
               0.548107,
               0.732261,
               1.092969,
               -0.614623,
               1.001354,
               0.402987,
               -0.404031,
               0.23679,
               -0.21313,
               0.761098,
               0.105297,
               0.527722,
               -0.788494,
               0.151373,
               0.074597,
               -0.946399,
               1.175176,
               -0.430051,
               0.249356,
               1.199129,
               -1.00449,
               -0.94469,
               1.028696,
               -0.253056,
               -0.588369,
               -0.478163,
               -0.348857,
               -0.641207,
               0.786782,
               0.432252,
               -0.971487,
               1.261566,
               -1.222194,
               -0.211517,
               -0.855591,
               -0.525819,
               -0.018551,
               0.229555,
               0.471193,
               0.231835,
               0.470023,
               1.171157,
               -0.178855,
               -0.662814,
               -0.085309,
               0.302368,
               1.239864,
               -0.663021,
               -0.996512,
               0.082619,
               -0.343203,
               0.977029,
               -0.814778,
               0.570001,
               1.219304,
               -0.416275,
               -0.364022,
               -0.995168,
               -0.169465,
               -1.319785,
               -0.663721,
               -0.653103,
               -0.224289,
               0.461897,
               -0.673398,
               0.771339,
               0.380687,
               0.726288,
               0.171035,
               1.079639,
               -1.028305,
               0.269738,
               -0.0263,
               -0.730628,
               -0.438696,
               1.213303,
               -0.69988,
               -0.544811,
               0.318799,
               -0.343965,
               0.92797,
               1.578551,
               0.06584,
               0.046044,
               -0.053117,
               -0.64046,
               -0.725612,
               0.319659,
               1.650811,
               1.349565,
               -0.237668,
               1.449299,
               0.342423,
               0.034587,
               0.251176,
               -0.414401,
               0.224235,
               0.141435,
               -1.661839,
               -1.222273,
               -0.308313,
               -0.145295,
               0.702112,
               -1.007648,
               -0.849226,
               -0.362824,
               -0.436721,
               0.637221,
               0.744187,
               1.228804,
               0.303164,
               0.347637,
               -0.422012,
               0.199018,
               -0.189308,
               -0.630091,
               -0.289876,
               -1.098871,
               0.780504,
               1.313904,
               0.913157,
               1.572799,
               0.014188,
               0.629924,
               -0.836532,
               -0.495429,
               0.360025,
               0.198441,
               0.893891,
               0.276277,
               0.659614,
               -0.603557,
               0.061036,
               0.640493,
               0.863813,
               1.133897,
               -0.215551,
               -1.054488,
               1.275467,
               0.243259,
               0.701758,
               1.286152,
               0.328773,
               -0.458013,
               -0.523256,
               -0.573836,
               0.659623,
               1.225485,
               -0.891056,
               -1.200618,
               1.704388,
               1.444061,
               -0.182354,
               0.142145,
               1.042517,
               -0.603576,
               0.273189,
               -0.396644,
               -0.446109,
               0.098562,
               -0.19281,
               0.127523,
               -0.835077,
               0.812303,
               -0.349411,
               0.315239,
               1.009291,
               0.47802,
               -0.382106,
               1.150966,
               0.202684,
               -0.254699,
               0.338805,
               -0.103838,
               0.033174,
               -0.418257,
               0.29246,
               0.41036,
               0.71934,
               -0.005251,
               0.357385,
               -0.179964,
               0.47423,
               0.600641,
               -0.138045,
               0.434518,
               -0.121907,
               0.204615,
               0.701365,
               -0.515659,
               -0.418301,
               -0.179531,
               -1.150887,
               0.559643,
               1.509173,
               0.215333,
               -0.783119,
               0.756241,
               -0.738165,
               -0.568166,
               -1.126538,
               -1.161189,
               -0.590323,
               1.053165,
               0.055752,
               2.216846,
               -0.463836,
               0.479844,
               0.120685,
               -0.046925,
               0.44235,
               -0.018683,
               -0.164174,
               -0.480582,
               -0.415853,
               -1.276531,
               -0.233789,
               0.64677,
               -0.485086,
               -0.218306,
               -0.45584,
               0.706909,
               -0.015166,
               2.176936,
               -1.660348,
               -0.412856,
               -0.300773,
               0.55617),
          LIST(1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0,
               1.0),
          LIST(0.12871,
               -0.125588,
               0.189093,
               0.013369,
               0.05894,
               0.039481,
               -0.067848,
               0.016735,
               0.214027,
               0.051371,
               -0.040436,
               0.037496,
               -0.045,
               0.092085,
               -0.108927,
               -0.013592,
               0.03969,
               0.010117,
               -0.026325,
               0.098179,
               -0.028407,
               0.123525,
               0.066158,
               -0.057917,
               -0.033709,
               -0.038128,
               -0.021183,
               0.022426,
               -0.020076,
               -0.034503,
               -0.031426,
               -0.017985,
               0.054551,
               -0.003604,
               0.053402,
               -0.037121,
               0.000392,
               -0.088751,
               0.045685,
               0.049742,
               -0.021483,
               -0.021441,
               0.008968,
               0.012212,
               0.017296,
               0.020543,
               0.015553,
               -0.02867,
               -0.04714,
               -0.004722,
               -0.001962,
               -0.000624,
               0.000986,
               0.043191,
               -0.057234,
               0.047435,
               -0.066799,
               -0.004117,
               0.00085,
               -0.018371,
               0.016154,
               0.002825,
               -0.044875,
               0.030688,
               -0.01442,
               -0.077118,
               -0.049029,
               -0.001225,
               0.060779,
               -0.016346,
               0.009111,
               -0.019191,
               0.003957,
               -0.020019,
               0.029993,
               0.025516,
               -0.003063,
               -0.015087,
               -0.035682,
               -0.001349,
               0.027024,
               0.008031,
               0.035961,
               0.031769,
               0.019874,
               -0.0023,
               -0.053599,
               -0.018446,
               0.019288,
               0.016015,
               0.030588,
               0.045335,
               0.005203,
               0.014561,
               -0.033134,
               -0.018086,
               -0.018073,
               0.010005,
               0.010071,
               0.003272,
               -0.029652,
               0.00283,
               0.05965,
               -0.010743,
               0.012739,
               -0.02251,
               0.018932,
               0.020233,
               0.010406,
               0.020747,
               0.020925,
               0.004142,
               -0.019992,
               0.001171,
               -0.010238,
               0.023062,
               -0.013889,
               0.059672,
               0.013015,
               -0.040602,
               0.025738,
               0.012815,
               0.019052,
               0.005289,
               0.023835,
               0.061758,
               -0.014883,
               -0.010933,
               0.056492,
               -0.015915,
               0.012407,
               -0.038722,
               -0.007849,
               0.02513,
               0.044533,
               -0.023757,
               -0.013136,
               0.006171,
               -0.03079,
               0.013623,
               -0.00026,
               0.01574,
               -0.022248,
               -0.017691,
               -0.03019,
               -0.015159,
               0.015588,
               -0.016989,
               -0.058171,
               0.036819,
               -0.028572,
               0.000949,
               0.033662,
               -0.022246,
               0.052937,
               -0.015892,
               0.037512,
               -0.054663,
               0.000851,
               -0.04722,
               0.011637,
               -0.055141,
               0.058773,
               -0.007718,
               -0.021671,
               0.018944,
               -0.02326,
               0.022133,
               0.03414,
               -0.035826,
               0.009553,
               0.052097,
               -0.00064,
               -0.000134,
               0.039384,
               0.016712,
               -0.013513,
               -0.024672,
               0.001858,
               -0.010579,
               -0.005114,
               -0.019279,
               0.043872,
               -0.000493,
               -0.017715,
               0.047047,
               0.020894,
               0.01051,
               -0.006939,
               -0.029505,
               -0.060405,
               -0.029588,
               0.015057,
               0.032232,
               -0.008068,
               0.033195,
               0.018915,
               0.049631,
               0.03677,
               0.024069,
               0.003599,
               -0.009513,
               -0.011224,
               -0.010732,
               -0.018902,
               -0.028483,
               0.02353,
               0.017226,
               -0.040839,
               0.022378,
               0.047195,
               -0.007223,
               -0.015566,
               -0.039487,
               0.025981,
               0.010013,
               -0.021547,
               -0.018587,
               0.035177,
               -0.001117,
               0.002317,
               0.043563,
               0.051942,
               0.037727,
               0.069699,
               -0.021832,
               -0.02237,
               0.006295,
               0.036709,
               -0.003023,
               0.011434,
               -0.015124,
               -0.021054,
               -0.048493,
               0.030553,
               -0.025823,
               -0.008511,
               -0.029322,
               -0.013375,
               -0.012152,
               0.033705,
               0.069569,
               -0.040742,
               -0.042998,
               0.030202,
               0.017706,
               -0.033365,
               -0.007074,
               0.025649,
               -0.06459,
               -0.056009,
               0.051336,
               -0.040293,
               0.011823,
               0.012715,
               -0.038238,
               -0.036507,
               -0.022521,
               0.004152,
               -0.022251,
               0.027697,
               0.044308,
               -0.013428,
               -0.023029,
               0.058441,
               -0.028637,
               0.006706,
               0.016889,
               -0.028091,
               0.064143,
               0.001237,
               -0.085674,
               -0.026364,
               0.032359,
               -0.072874,
               0.032253,
               0.034859,
               0.010261,
               0.081617,
               0.014426,
               -0.052353,
               -0.00967,
               -0.009416,
               -0.026197,
               -0.018833,
               -0.013509,
               -0.117227,
               -0.017537,
               0.03595,
               0.020037,
               -0.05749,
               -0.038751,
               -0.020682,
               -0.038116,
               -0.044878,
               -0.022078,
               -0.03333,
               0.044205,
               0.040116,
               -0.101896,
               -0.03211,
               -0.045799,
               -0.08281,
               -0.090536,
               0.046306,
               0.009346,
               0.150762,
               0.08609,
               -0.038526,
               -0.052103,
               0.010766,
               -0.054915,
               -0.121506,
               0.127663,
               0.043758,
               0.028257),
          "test_case_6");

TEST_DATA(LIST(9, 2, 2),
          LIST(16),
          LIST(21),
          16,
          5,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               -0.141412,
               -1.880003,
               0.800294,
               -0.000426,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.081196,
               0.418519,
               0.70648,
               0.312736),
          LIST(0.08,
               0.115015,
               0.214731,
               0.363966,
               0.54,
               0.716034,
               0.865269,
               0.964985,
               1.0,
               0.964985,
               0.865269,
               0.716034,
               0.54,
               0.363966,
               0.214731,
               0.115015),
          LIST(-0.491639,
               6.211607,
               -2.548159,
               0.405778,
               0.317903,
               -0.151269,
               0.211262,
               -0.598062,
               0.087312,
               -0.014222,
               -0.039344,
               0.096729,
               0.114342,
               0.086891,
               -0.235894,
               0.134703,
               0.102943,
               -0.195413,
               0.532398,
               0.714187,
               -1.199555),
          "test_case_7");

TEST_DATA(LIST(9, 1, 2),
          LIST(16),
          LIST(16),
          16,
          5,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -2.242565,
               0.775289,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.25736,
               0.053873),
          LIST(0.08,
               0.115015,
               0.214731,
               0.363966,
               0.54,
               0.716034,
               0.865269,
               0.964985,
               1.0,
               0.964985,
               0.865269,
               0.716034,
               0.54,
               0.363966,
               0.214731,
               0.115015),

          LIST(1.517967,
               0.059246,
               0.683709,
               0.171225,
               -0.67969,
               -0.313903,
               0.476083,
               0.440957,
               -0.22407,
               -0.202819,
               0.654431,
               -0.009633,
               -0.949729,
               0.099208,
               0.628851,
               -0.723471),
          "test_case_8");

TEST_DATA(LIST(7, 10, 2),
          LIST(13),
          LIST(58),
          13,
          5,
          false,
          false,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397,
               0.914107,
               0.524005,
               -0.495318,
               -0.178851,
               -0.537561,
               0.486532,
               0.538635,
               0.046373,
               -0.133663,
               0.179325,
               0.124769,
               0.702222,
               0.545824,
               -0.323416,
               -0.08718,
               -0.106655,
               -0.853675,
               -0.730806,
               -0.689785,
               0.443142,
               0.355258,
               -0.973766,
               -0.557472,
               0.030843,
               -0.668737,
               0.06605,
               -0.305378,
               0.529085,
               0.968699,
               0.737771,
               0.347629,
               -0.554176,
               -0.933863,
               -0.009915,
               -0.186803,
               -1.177926,
               -0.022371,
               1.156682,
               0.905028,
               0.364473,
               -0.68248,
               -0.36259,
               0.575913,
               -0.468459),
          LIST(0.08,
               0.13269,
               0.27869,
               0.484553,
               0.703118,
               0.884315,
               0.986633,
               0.986633,
               0.884315,
               0.703118,
               0.484553,
               0.27869,
               0.13269),
          LIST(-2.10699,
               1.616492,
               1.053636,
               0.0222,
               -0.298848,
               -0.142984,
               -0.038204,
               0.055552,
               -0.045343,
               -0.082871,
               0.022311,
               -0.170339,
               -0.157158,
               0.277663,
               0.110185,
               -0.518284,
               -0.160493,
               0.203147,
               0.200596,
               0.030184,
               0.09454,
               -0.12573,
               -0.005295,
               -0.466917,
               -0.330057,
               0.242854,
               -0.047923,
               -0.441443,
               -0.030931,
               -0.101569,
               0.389667,
               -0.166692,
               0.331651,
               0.005045,
               0.004413,
               -0.638342,
               0.050048,
               -0.15694,
               0.290211,
               0.300734,
               0.097891,
               0.1807,
               -0.200471,
               0.255243,
               0.275675,
               -0.036741,
               0.010712,
               -0.12759,
               0.130276,
               0.245474,
               -0.143483,
               -0.222381,
               0.186179,
               -0.175667,
               -0.277158,
               -1.014543,
               1.055807,
               1.576216),
          "test_case_9");

TEST_DATA(LIST(8, 4, 2),
          LIST(15),
          LIST(24),
          15,
          3,
          false,
          true,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599),
          LIST(0.08,
               0.119769,
               0.2322,
               0.397852,
               0.588083,
               0.77,
               0.912148,
               0.989948,
               0.989948,
               0.912148,
               0.77,
               0.588083,
               0.397852,
               0.2322,
               0.119769),
          LIST(3.291374,
               8.294685,
               1.167863,
               1.385183,
               1.064835,
               -1.509556,
               -1.10401,
               0.05048,
               0.623216,
               0.359051,
               -0.455888,
               0.050748,
               -1.113987,
               0.617486,
               1.262461,
               -1.060754,
               0.252173,
               0.095663,
               -0.842068,
               -0.066716,
               -1.753518,
               2.432848,
               -6.722296,
               4.764852),
          "test_case_10");

TEST_DATA(LIST(9, 2, 2),
          LIST(17),
          LIST(8),
          17,
          7,
          true,
          true,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               -0.141412,
               -1.880003,
               0.800294,
               -0.000426,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.081196,
               0.418519,
               0.70648,
               0.312736),
          LIST(0.08,
               0.111063,
               0.200056,
               0.33496,
               0.497557,
               0.665885,
               0.817212,
               0.9311,
               0.992168,
               0.992168,
               0.9311,
               0.817212,
               0.665885,
               0.497557,
               0.33496,
               0.200056,
               0.111063),
          LIST(-0.723812, 0.925605, -0.481602, -0.551067, -0.686034, 1.1282, 0.457108, 0.477346),
          "test_case_11");

TEST_DATA(LIST(4, 5, 4, 2),
          LIST(9),
          LIST(4, 4),
          9,
          1,
          true,
          true,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397,
               0.914107,
               0.524005,
               -0.495318,
               -0.178851,
               -0.537561,
               0.486532,
               0.538635,
               0.046373,
               -0.133663,
               0.179325,
               0.124769,
               0.702222,
               0.545824,
               -0.323416,
               -0.08718,
               -0.106655,
               -0.853675,
               -0.730806,
               -0.689785,
               0.443142,
               0.355258,
               -0.973766,
               -0.557472,
               0.030843,
               -0.668737,
               0.06605,
               -0.305378,
               0.529085,
               0.767108,
               0.811062,
               0.12121,
               -0.163668,
               -0.765124,
               0.151078,
               -0.628587,
               0.345983,
               -0.510632,
               0.651185,
               -0.93891,
               -0.978718,
               -1.013209,
               -0.378962,
               0.341017,
               0.155568,
               -0.416701,
               -0.923478,
               -0.770212,
               1.246605,
               -0.933863,
               -0.009915,
               -0.186803,
               -1.177926,
               1.418097,
               0.400423,
               0.391605,
               -0.678915,
               -0.68248,
               -0.36259,
               0.575913,
               -0.468459,
               -1.896111,
               0.11654,
               -0.243689,
               -0.249654),
          LIST(0.08, 0.18762, 0.460122, 0.77, 0.972259, 0.972259, 0.77, 0.460122, 0.18762),
          LIST(-0.052018,
               0.401614,
               -0.455422,
               0.349482,
               -0.076621,
               0.358245,
               -0.479703,
               -1.098363,
               0.130201,
               0.676097,
               -0.034377,
               0.665509,
               -0.604147,
               0.825336,
               0.363143,
               0.456889),
          "test_case_12");

TEST_DATA(LIST(4, 5, 4, 2),
          LIST(9),
          LIST(4, 20),
          9,
          1,
          false,
          true,
          20,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397,
               0.914107,
               0.524005,
               -0.495318,
               -0.178851,
               -0.537561,
               0.486532,
               0.538635,
               0.046373,
               -0.133663,
               0.179325,
               0.124769,
               0.702222,
               0.545824,
               -0.323416,
               -0.08718,
               -0.106655,
               -0.853675,
               -0.730806,
               -0.689785,
               0.443142,
               0.355258,
               -0.973766,
               -0.557472,
               0.030843,
               -0.668737,
               0.06605,
               -0.305378,
               0.529085,
               0.767108,
               0.811062,
               0.12121,
               -0.163668,
               -0.765124,
               0.151078,
               -0.628587,
               0.345983,
               -0.510632,
               0.651185,
               -0.93891,
               -0.978718,
               -1.013209,
               -0.378962,
               0.341017,
               0.155568,
               -0.416701,
               -0.923478,
               -0.770212,
               1.246605,
               -0.933863,
               -0.009915,
               -0.186803,
               -1.177926,
               1.418097,
               0.400423,
               0.391605,
               -0.678915,
               -0.68248,
               -0.36259,
               0.575913,
               -0.468459,
               -1.896111,
               0.11654,
               -0.243689,
               -0.249654),
          LIST(0.08, 0.18762, 0.460122, 0.77, 0.972259, 0.972259, 0.77, 0.460122, 0.18762),
          LIST(13.877386,
               3.384092,
               2.056015,
               -1.841928,
               -0.052018,
               0.401614,
               -0.455422,
               0.349482,
               0.095003,
               -1.183578,
               -0.262335,
               -3.491107,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               -14.213247,
               -8.143208,
               2.303959,
               -0.28931,
               -0.076621,
               0.358245,
               -0.479703,
               -1.098363,
               -0.615004,
               0.65587,
               -1.475823,
               11.666025,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               -2.977139,
               -3.026151,
               -3.575629,
               0.370095,
               0.130201,
               0.676097,
               -0.034377,
               0.665509,
               0.30204,
               1.26535,
               -0.529527,
               2.842953,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               -31.075365,
               1.198775,
               -0.119149,
               -0.682383,
               -0.604147,
               0.825336,
               0.363143,
               0.456889,
               1.108908,
               -1.283036,
               1.008886,
               -2.963384,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0),
          "test_case_13");

TEST_DATA(LIST(4, 5, 4, 2),
          LIST(9),
          LIST(4, 3),
          9,
          1,
          false,
          true,
          3,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397,
               0.914107,
               0.524005,
               -0.495318,
               -0.178851,
               -0.537561,
               0.486532,
               0.538635,
               0.046373,
               -0.133663,
               0.179325,
               0.124769,
               0.702222,
               0.545824,
               -0.323416,
               -0.08718,
               -0.106655,
               -0.853675,
               -0.730806,
               -0.689785,
               0.443142,
               0.355258,
               -0.973766,
               -0.557472,
               0.030843,
               -0.668737,
               0.06605,
               -0.305378,
               0.529085,
               0.767108,
               0.811062,
               0.12121,
               -0.163668,
               -0.765124,
               0.151078,
               -0.628587,
               0.345983,
               -0.510632,
               0.651185,
               -0.93891,
               -0.978718,
               -1.013209,
               -0.378962,
               0.341017,
               0.155568,
               -0.416701,
               -0.923478,
               -0.770212,
               1.246605,
               -0.933863,
               -0.009915,
               -0.186803,
               -1.177926,
               1.418097,
               0.400423,
               0.391605,
               -0.678915,
               -0.68248,
               -0.36259,
               0.575913,
               -0.468459,
               -1.896111,
               0.11654,
               -0.243689,
               -0.249654),
          LIST(0.08, 0.18762, 0.460122, 0.77, 0.972259, 0.972259, 0.77, 0.460122, 0.18762),
          LIST(13.877386,
               3.384092,
               2.056015,
               -14.213247,
               -8.143208,
               2.303959,
               -2.977139,
               -3.026151,
               -3.575629,
               -31.075365,
               1.198775,
               -0.119149),
          "test_case_14");

TEST_DATA(LIST(4, 5, 3, 2),
          LIST(9),
          LIST(4, 15),
          9,
          1,
          true,
          true,
          15,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397,
               0.914107,
               0.524005,
               -0.495318,
               -0.178851,
               -0.537561,
               0.486532,
               0.538635,
               0.046373,
               0.301089,
               0.465394,
               -0.740666,
               0.25763,
               -0.267906,
               -0.126909,
               0.105037,
               1.07355,
               -0.916593,
               0.669528,
               0.535622,
               0.288661,
               0.357582,
               -0.690883,
               -0.784976,
               -0.600003),
          LIST(0.08, 0.18762, 0.460122, 0.77, 0.972259, 0.972259, 0.77, 0.460122, 0.18762),
          LIST(0.399276,
               -0.748171,
               0.499295,
               0.199102,
               1.337596,
               -1.024291,
               -4.452919,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.348149,
               -0.61203,
               -0.197402,
               -0.637983,
               0.868664,
               1.164001,
               -5.805855,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               -0.706095,
               0.267709,
               -0.147456,
               -0.645965,
               -1.29483,
               -1.192057,
               6.938645,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               -0.113767,
               -0.575167,
               -0.236945,
               -0.112519,
               -0.788267,
               0.424486,
               4.115699,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0,
               0.0),
          "test_case_15");

TEST_DATA(LIST(4, 5, 3, 2),
          LIST(9),
          LIST(4, 2),
          9,
          1,
          true,
          true,
          2,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397,
               0.914107,
               0.524005,
               -0.495318,
               -0.178851,
               -0.537561,
               0.486532,
               0.538635,
               0.046373,
               0.301089,
               0.465394,
               -0.740666,
               0.25763,
               -0.267906,
               -0.126909,
               0.105037,
               1.07355,
               -0.916593,
               0.669528,
               0.535622,
               0.288661,
               0.357582,
               -0.690883,
               -0.784976,
               -0.600003),
          LIST(0.08, 0.18762, 0.460122, 0.77, 0.972259, 0.972259, 0.77, 0.460122, 0.18762),
          LIST(0.399276, -0.748171, 0.348149, -0.61203, -0.706095, 0.267709, -0.113767, -0.575167),
          "test_case_16");

TEST_DATA(LIST(2, 8, 3, 2),
          LIST(10),
          LIST(2, 2),
          14,
          1,
          true,
          true,
          -1,
          LIST(0.297695,
               0.016592,
               -0.279148,
               0.689277,
               0.362334,
               0.155,
               -0.239486,
               0.793691,
               -0.090853,
               -0.342595,
               0.402096,
               0.942263,
               0.157597,
               0.066117,
               0.631835,
               -0.466648,
               0.839808,
               -1.475722,
               -0.303455,
               -0.14015,
               0.979937,
               0.036933,
               0.415762,
               -0.48385,
               -0.032337,
               0.445218,
               1.260043,
               -0.977072,
               0.57457,
               0.369129,
               0.009679,
               -0.050088,
               0.799821,
               0.104126,
               -0.319616,
               0.186172,
               0.345908,
               -0.502517,
               0.376084,
               -0.704322,
               0.133074,
               -0.016149,
               -0.679752,
               0.123423,
               -1.896281,
               -0.220615,
               -0.005373,
               0.108022,
               -0.495083,
               0.555094,
               0.31813,
               -0.309025,
               0.598525,
               -1.914902,
               -0.252959,
               1.314566,
               -0.79338,
               0.563575,
               -0.145182,
               0.438719,
               -0.855944,
               -0.070875,
               -0.45551,
               0.885599,
               -1.063026,
               1.19205,
               -0.463542,
               0.104772,
               0.69778,
               -1.277324,
               -0.55823,
               0.660712,
               0.579362,
               -0.254301,
               -0.279057,
               -0.028693,
               0.783594,
               1.234517,
               -0.499382,
               1.523363,
               -0.295252,
               0.512481,
               -0.771287,
               0.650043,
               0.378494,
               -0.692269,
               0.61577,
               -0.286805,
               -0.1364,
               0.171278,
               -1.487083,
               -0.16571,
               -0.900809,
               -0.236657,
               -0.876623,
               0.838397),
          LIST(0.08, 0.167852, 0.397852, 0.682148, 0.912148, 1.0, 0.912148, 0.682148, 0.397852, 0.167852),
          LIST(-0.559797, 0.042266, 0.532177, 0.228155),
          "test_case_17");